import axios from 'axios';
import { ElMessage } from 'element-plus'
import 'element-plus/theme-chalk/el-message.css'

import {useUserStore} from "@/stores/user.js";
import router from '@/router'
const httpInstance = axios.create({
    baseURL: 'http://pcapi-xiaotuxian-front-devtest.itheima.net',
    timeout: 5000
})

// 请求拦截器
httpInstance.interceptors.request.use(config => {
    // 添加token逻辑
    const userStore=useUserStore()
    const token=userStore.userInfo.token
    console.log("获取的token:",token)
    if(token){
        config.headers.Authorization=`Bearer ${token}`// 小兔鲜headers中添加特定的token

    }
    return config
},e=>Promise.reject(e));

// 响应拦截器
httpInstance.interceptors.response.use(res=>res.data,e=>{


    ElMessage({
        type:'warning',
        message:e.response.data.message
    })
    // 处理401（token长时间后过期）
    // 删除用户信息，返回登录页面
    if(e.response.status == 401){
        const userStore=useUserStore()
        userStore.clearUserInfo()
        
        router.push('/login')
    }

    return Promise.reject(e)
});

export default httpInstance;//导出